import matplotlib.pyplot as plt
import numpy as np
from matplotlib.lines import lineStyles

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

x = np.linspace(0, 10, 100)
y = np.sin(x) #map(sin, arr)
#创建图表
plt.figure(figsize=(10, 6))
plt.plot(x, y, label='sin(x)')

plt.title('基本图标元素示例', fontsize = 16)
plt.xlabel('X轴', fontsize = 12)
plt.ylabel('Y轴', fontsize = 12)
#设置坐标轴范围
plt.xlim(0, 5)
plt.ylim(-1.5, 1.5)

plt.grid(True, linestyle = '--', alpha = 0.5)
#设置图例
#loc 定位图例的位置
plt.legend(loc = "upper left")

#文本注释 x、y位置 文本 字体大小
plt.text(1.8, 1, "峰值", fontsize = 12)
#箭头:对应文本 xy箭头坐标 sytext箭头尾巴坐标
#facecolor 箭头颜色
#shrink 箭头收缩
plt.annotate('最小值',
             xy=(3 * np.pi / 2, -1),
             xytext=(5, -0.5),
             arrowprops=dict(facecolor = 'black', shrink = 0.05)
             )
plt.show()